home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d20 / wnode21.arc / WNSTRUCT.DOC < prev   
Text File  |  1992-01-15  |  4KB  |  91 lines

  1. WNODE 2.1 - Copyright 1990,91 by Silvan Calarco -
  2.  
  3.     ───────────────────────────────────────
  4.     Structures of W-Nodelist files ver. 2.1
  5.     ───────────────────────────────────────
  6.  
  7. The following structures are created in Turbo Pascal; look at following
  8. table for type compatibility.
  9.  
  10. Turbo Pascal  C language    Length
  11. ────────────  ────────────  ───────
  12. Byte          Char          1 byte
  13. Char          Char          1 byte
  14. Integer       Int           2 bytes
  15. Word          Unsigned Int  2 bytes
  16. Longint       Long          4 bytes
  17. ────────────  ────────────  ───────
  18.  
  19. String[] format uses a byte more than the number specified in brackets, as
  20. the first one (String[0]) contains string length.
  21.  
  22. ───────────────────────────────────────────────────────────────────────────
  23.  
  24. Files created by WNode are 4, and are used for indexing text nodelist in
  25. order to speed up seeks;
  26.  
  27. *AltNode.WNL contains a queue of nodelist files used other than NodeList.*,
  28.              so private nodelists, pointlists or alternate net nodelists.
  29.  
  30. *NodeLoc.WNL contains position of concerned field, and nodelist file in
  31.              which are contained the informations about node every record
  32.              refers to.
  33.  
  34. *SysList.WNL contains names of all Sysops alphabetically sorted and location
  35.              of relative node in NodeLoc.WNL.
  36.  
  37. *NodeRec.WNL contains indexes to obtain a quick search inside NodeLoc.WNL and
  38.              SysList.WNL. All starting positions of zones and nets, and of
  39.              sorted sysop are put in it.
  40.  
  41.  
  42.    NodeLocRec=Record             { Record of NodeLoc.WNL }
  43.                  NodeType:Byte;  { 1:Zone coordinator
  44.                                    2:Region coordinator
  45.                                    4:Host
  46.                                    8:Hub
  47.                                   16:Pvt
  48.                                   32:Hold
  49.                                   64:Down
  50.                                  128:Boss [from pointlist] }
  51.                  Zone,Net,Node,Point:Integer;
  52.                  FileNum:Byte;   { 1: Nodelist.* [newest file];
  53.                                    2: AltNode.WNL [created by WNode] }
  54.                  FilePos:Longint; { Contains absolute node position in one
  55.                                     of two files pointed by FileNum }
  56.               end;
  57.  
  58.  
  59.    SysopRec=Record               { Record of SysList.WNL }
  60.                Name:String[20];
  61.                BBSRecord:Longint;{ Position of node record in NodeLoc.WNL }
  62.             end;
  63.  
  64.  
  65.    NodeRec=Record                { Record of NodeIdx.WNL }
  66.               NodeType:Byte;     { For mapping, see NodeLocRec.NodeType.
  67.                                    Nodes reported in this field are only of
  68.                                    the following types:
  69.                                    Zone coordinator
  70.                                    Region coordinator
  71.                                    Host
  72.                                    Boss }
  73.               Number:Integer;    { The significative part of address:
  74.                                    Zone coordinator: zone number
  75.                                    Region coordinator, Host: net number
  76.                                    Boss: node number }
  77.               BBSRecord:Longint; { Position of node record in NodeLoc.WNL }
  78.               Match:Array[1..4] of Char;
  79.                                  { The first 4 character of some of the
  80.                                    sorted sysop names. One out of about 30
  81.                                    names is taken. }
  82.               SysopRecord:Longint;
  83.                                  { Position of sysop record in SysList.WNL }
  84.            end;
  85.  
  86. ───────────────────────────────────────────────────────────────────────────
  87. Note: The author reserves for himself right to change this document without
  88. advice.
  89. ───────────────────────────────────────────────────────────────────────────
  90. End of file.
  91.